#ifndef _PATH_H_
#define _PATH_H_

class CPath;

#include "Map.h"

class CPath
{
public:
	typedef struct
	{
		int x;
		int y;
	}TPathPoint;

private:
	CMap *m_map;
	TPathPoint *m_path;
	int m_pathLen;
	int m_pathMaxLen;
	int m_pathPos;

public:
	CPath(CMap *map);
	void reset();
	int addPoint(int x, int y, bool endPoint=false);
	int getSize();
	int optimize();
	bool hasMorePoints();
	TPathPoint getNextPoint();
	TPathPoint getPoint(int index);
};
#endif //_PATH_H_